package com.bobo.Socket;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * 模拟服务端监听多个客户端消息
 * (保证每一个客户端在一个单独的线程中执行)
 * @author win7
 *
 */
public class ServerSocketThreadTest {

	public static void main(String[] args) {
		ServerTest();
	}
	
	public static void ServerTest(){
		int count=0;
		try {
			//创建服务器端ServerSocket
			ServerSocket serverSocket=new ServerSocket(8888);
			System.out.println("******ServerSocket服务器端已启动*******");
			//循环监听多个客户端发过来的消息
			while(true){
				Socket socket= serverSocket.accept();//监听客户端的socket请求
				ServerThread serverThread=new ServerThread(socket);//保证每一个客户端在一个单独线程中执行
				serverThread.setPriority(4);//设置线程的优先级（默认为5） 降低优先级可以提高运行效率
				serverThread.start();
				count++;
				System.out.println("监听到"+count+"客户端请求");
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
